Business intelligence applications desirably are deployed at various levels of an enterprise. At a local or regional office level, business applications may be directed to tracking data for specific customers, individual stores, or particular marketing personnel. On the other hand, headquarters-based applications may be directed to analysis of data summarizing data reported by the regions and/or local offices to analyze the data on an enterprise-wide level.
Adapting or scaling applications for use at multiple levels of an enterprise is a complicated task. Business applications used in local or regional offices may focus on daily or weekly details regarding individual customers, while applications at a headquarters level may focus on composite monthly or quarterly data for each of the regions. As a result, schemas used in defining databases for regional office applications will include different dimensions and members than those used in defining databases for the headquarters applications, as will the business rules used in manipulating the data stored in those databases.
Unfortunately, the schemas, business rules, and other attributes of applications usually are hard-coded specifically to the particular environments in which they are deployed, making it difficult to replicate the application at other levels or locations within the enterprise. At the very least, replication of applications may require significant technical and programming expertise to re-code or modify the schemas, business logic, and other attributes of applications so they can be used at other levels or in other departments of the enterprise. It would be desirable to be able to replicate and customize applications without having to rewrite or revise the hard-coded applications for each environment.